<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="../Vue学习/vue.js"></script>
</head>

<body>
    <!-- 作用域插槽（带数据的插槽）**
    作用域插槽/带数据的插槽，
    在使用时在html子模块中通过template的slot-scope属性获取到子标签的数据，
    同时通过指定的标签替换掉插槽中原本的标签 -->

    <div id="app">
        <cpn>
            <!-- 指定作用域范围 -->
            <template slot-scope="slot">
                <!-- p标签用于替换数据 数据lai-->
            <p style="color: red;">{{slot.abc}}</p>
          </template>
        </cpn>
    </div>
    <!-- 带数据的插槽：作用域插槽 -->
    <template id="t1">
        <div>
          <p>{{message}}</p>
          <!-- info的值来自于模板的范围 -->
          <!-- 在插槽上绑定数据 -->
          <slot :abc="info">
            <h5>{{info}}</h5>
          </slot>
           <!-- 在插槽上绑定数据 -->
           <slot :abc="message">
            <h5>{{message}}</h5>
          </slot>
        </div>
      </template>
    <script>
        // 注册
        Vue.component("cpn", {
            template: "#t1",
            data() {
                return {
                    message: "child",
                    info: "info"
                }
            }
        })
        new Vue({
            el: "#app",
            data: {

            }
        });
    </script>
</body>

</html>